479B - Towers - CodeForces Solution


brute force constructive algorithms greedy implementation sortings *1400

Please click on ads to support us..

C++ Code:

#include<bits/stdc++.h>
using namespace std;
#define HareKrishna ios_base::sync_with_stdio(false), cin.tie(NULL), cout.tie(NULL)
#define mod 1000000007
#define ll long long int
#define pb push_back
const ll N=1e8+5;

void rk_d(){
 ll n,m;
 cin>>n>>m;
 
 vector<pair<ll,ll>> v;
 ll i,j;
 
 for (i=0; i<n; i++){
    ll x;
    cin>>x;
    v.pb({x,i+1});
 }
 
 vector<pair<ll,ll>> ans;
 
 for (i=0; i<m; i++){
    sort(v.rbegin(),v.rend());
    
    if (v[0].first==v[n-1].first){
       break;
    }
    
    v[0].first-=1;
    v[n-1].first+=1;
    ans.pb({v[0].second,v[n-1].second});
    
 }
 
 sort(v.rbegin(),v.rend());
 
 ll curr=v[0].first-v[n-1].first;

 cout<<curr<<" "<<ans.size()<<endl;
 for (auto it: ans){
    cout<<it.first<<" "<<it.second<<endl;
 }
}
 
int main(){
	
   HareKrishna;
   ll t;
   //cin>>t;
   t=1;
   
   while (t--){
   	
   	rk_d();
   	
   }
   
   return 0;
}


Comments

Submit
0 Comments
More Questions

455A - Boredom
1099A - Snowball
1651D - Nearest Excluded Points
599A - Patrick and Shopping
237A - Free Cash
1615B - And It's Non-Zero
1619E - MEX and Increments
34B - Sale
1436A - Reorder
1363C - Game On Leaves
1373C - Pluses and Minuses
1173B - Nauuo and Chess
318B - Strings of Power
1625A - Ancient Civilization
864A - Fair Game
1663B - Mike's Sequence
448A - Rewards
1622A - Construct a Rectangle
1620A - Equal or Not Equal
1517A - Sum of 2050
620A - Professor GukiZ's Robot
1342A - Road To Zero
1520A - Do Not Be Distracted
352A - Jeff and Digits
1327A - Sum of Odd Integers
1276A - As Simple as One and Two
812C - Sagheer and Nubian Market
272A - Dima and Friends
1352C - K-th Not Divisible by n
545C - Woodcutters